1954C - Long Multiplication - CodeForces Solution


greedy math

Please click on ads to support us..

Python Code:

def main():
    n = int(input())

    for _ in range(n):
        x = int(input())
        y = int(input())

        if(x==y):
            print(y)
            print(x)
            continue

        max_, min_ = max(x, y), min(x, y)
        x_s, y_s = str(max_), str(min_)
        x_l, y_l = max_, min_

        j = len(x_s) - 1
                
        while x_l > y_l:
            if int(x_s[j]) > int(y_s[j]):
                temp = x_s[j]
                x_s = x_s[:j] + y_s[j] + x_s[j+1:]
                y_s = y_s[:j] + temp + y_s[j+1:]
                x_l, y_l = int(x_s), int(y_s)
        
            j -= 1

            
        j=j+1
        temp = x_s[j]
        x_s = x_s[:j] + y_s[j] + x_s[j+1:]
        y_s = y_s[:j] + temp + y_s[j+1:]
        x_l, y_l = int(x_s), int(y_s)

        print(x_l)
        print(y_l)
    
    
if __name__ == "__main__":
    main()


Comments

Submit
0 Comments
More Questions

1633C - Kill the Monster
1611A - Make Even
1030B - Vasya and Cornfield
1631A - Min Max Swap
1296B - Food Buying
133A - HQ9+
1650D - Twist the Permutation
1209A - Paint the Numbers
1234A - Equalize Prices Again
1613A - Long Comparison
1624B - Make AP
660B - Seating On Bus
405A - Gravity Flip
499B - Lecture
709A - Juicer
1358C - Celex Update
1466B - Last minute enhancements
450B - Jzzhu and Sequences
1582C - Grandma Capa Knits a Scarf
492A - Vanya and Cubes
217A - Ice Skating
270A - Fancy Fence
181A - Series of Crimes
1638A - Reverse
1654C - Alice and the Cake
369A - Valera and Plates
1626A - Equidistant Letters
977D - Divide by three multiply by two
1654B - Prefix Removals
1654A - Maximum Cake Tastiness